Lessons in Software Evolution Learned by Listening to Smalltalk
نویسندگان
چکیده
The biggest challenge facing software developers today is how to gracefully evolve complex software systems in the face of changing requirements. We clearly need software systems to be more dynamic, compositional and model-centric, but instead we continue to build systems that are static, baroque and inflexible. How can we better build change-enabled systems in the future? To answer this question, we propose to look back to one of the most successful systems to support change, namely Smalltalk. We briefly introduce Smalltalk with a few simple examples, and draw some lessons for software evolution. Smalltalk’s simplicity, its reflective design, and its highly dynamic nature all go a long way towards enabling change in Smalltalk applications. We then illustrate how these lessons work in practice by reviewing a number of research projects that support software evolution by exploiting Smalltalk’s design. We conclude by summarizing open issues and challenges for change-enabled systems of the future.
منابع مشابه
Regionalization of the Iowa State University Extension System: Lessons Learned by Key Administrators
The cyclical economic downturn in the United States has forced many Extension administrators to rethink and adjust services and programming. The Cooperative Extension System (CES), the organization primarily responsible for governmental Extension work in the United States, at Iowa State University responded to this economic downturn by restructuring its organization from county based to a regio...
متن کاملAssisting System Evolution: A Smalltalk Retrospective
This paper illustrates selected Smalltalk mechanisms supporting software system evolution. System modifications considered are the renaming of a class, the removal of a class, and the change of the layout of a class. The mechanisms discussed are in use in Smalltalk implementations for a long time and have proven to be effective for unanticipated software evolution. This paper gives a retrospect...
متن کاملPsychosocial Rehabilitation: Some Lessons Learned From Natural Disaster in Iran
Background: Disasters have adverse impacts on different aspects of human life. Psychosocial Rehabilitation is one of the fields which is usually overshadowed and ignored by physical rehabilitation or its importance does not receive proper attention. This research attempts to study some lessons learned from Psychosocial Rehabilitation based on disaster experiences in Iran. M...
متن کاملImportant Lessons Learned From Nearly a Half-Century of Orthopedic Practice
“Those who cannot remember the past are condemned to repeat it” [1]. The famous quote from Hispanic American philosopher George Santayana reminds us of the critical importance of constantly reflecting on the most important lessons garnered from both our own personal experiences and those of our peers. In 49 years of academic orthopedic practice, I have frequently reflected on the most important...
متن کاملThe Design of an Object-oriented Command Interpreter
Object oriented programming languages are noted for their ability to allow users to quickly construct large software systems. They achieve this ability by allowing the programmer to concentrate on what it is they want to do, ignoring details of how that functionality is achieved. Such characteristics should make the object oriented style of programming attractive to casual or novice computer us...
متن کامل